package xyz.xtt.pay.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;

import xyz.xtt.pay.api.dto.GetPayStatusRequest;
import xyz.xtt.pay.api.enums.PayOrderBusinessTypeEnum;
import xyz.xtt.pay.client.response.PayOrderResponse;
import xyz.xtt.pay.entity.PayOrder;
import xyz.xtt.pay.response.TopConsumeResponse;
import xyz.xtt.pay.vo.OrderVo;

/**
 * <p>
 * 支付订单主表 服务类
 * </p>
 *
 * @author author
 * @since 2025-02-10
 */
public interface IPayOrderService extends IService<PayOrder> {
	TopConsumeResponse getHotConsume(Long uId);

//	List<OrderVo> getOrderList(Long uid, Integer current, Integer pageSize);

	List<OrderVo> getOrderListByPayOrder(Long uid, Integer current, Integer pageSize);

	/**
	 * 根据业务类型和业务关联id获取支付订单
	 *
	 * @param payOrderBusinessTypeEnum
	 * @param businessRefId
	 * @return
	 */
	PayOrder getByBusiness(PayOrderBusinessTypeEnum payOrderBusinessTypeEnum, String businessRefId);

	Integer getPayStatus(GetPayStatusRequest request);

	PayOrderResponse queryPayStatus(Long businessRefId, Integer businessType);

}
